//deck.h
/********************************************************************************
*																				*
*	Author:			Vanessa Starkey												*
*	Assignment:		Assignment 8												*
*	Class:			CPS-151														*
*	Instructor:		V. Starkley													*
*	Due Date:		November 7													*
*																				*
*	This file delcares the deck class.											*
*																				*
********************************************************************************/

#ifndef DECK_H
#define DECK_H

#include "card.h"


class Deck
{
	public:
   		Deck();
		//creates a deck of 52 cards, ordered Ace through King for each suit

		void Shuffle();
		//pre:  none
		//post: randomizes the order of the cards in the deck

		Card getTopCard();
		//pre:  none
		//post: removes and returns top card of deck

		void displayDeck(ostream& fout=cout);
		//pre:  none
		//post: displays entire deck, one card per line

		void ResetDeck();
		//pre: none
		//post: puts all 52 cards back in deck

   private:
		Card d[52];
		int position;    //stores number of next "un-dealt" card in deck
};

#endif